home *** CD-ROM | disk | FTP | other *** search
/ Programming Microsoft Visual Basic .NET / Programming Microsoft Visual Basic .NET (Microsoft Press)(X08-78517)(2002).bin / setup / vbnet / 21 adonet disconnected / adonetdisconnected / ds.vb < prev    next >
Encoding:
Text File  |  2001-12-04  |  37.3 KB  |  992 lines

  1. '------------------------------------------------------------------------------
  2. ' <autogenerated>
  3. '     This code was generated by a tool.
  4. '     Runtime Version: 1.0.3512.0
  5. '
  6. '     Changes to this file may cause incorrect behavior and will be lost if 
  7. '     the code is regenerated.
  8. ' </autogenerated>
  9. '------------------------------------------------------------------------------
  10.  
  11. Option Strict Off
  12. Option Explicit On
  13.  
  14. Imports System
  15. Imports System.Data
  16. Imports System.Runtime.Serialization
  17. Imports System.Xml
  18.  
  19. '
  20. 'This source code was auto-generated by xsd, Version=1.0.3512.0.
  21. '
  22.  
  23. <Serializable(),  _
  24.  System.ComponentModel.DesignerCategoryAttribute("code"),  _
  25.  System.Diagnostics.DebuggerStepThrough(),  _
  26.  System.ComponentModel.ToolboxItem(true)>  _
  27. Public Class NewDataSet
  28.     Inherits DataSet
  29.     
  30.     Private tablePublishers As PublishersDataTable
  31.     
  32.     Private tableTitles As TitlesDataTable
  33.     
  34.     Private relationPubTitles As DataRelation
  35.     
  36.     Public Sub New()
  37.         MyBase.New
  38.         Me.InitClass
  39.         Dim schemaChangedHandler As System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged
  40.         AddHandler Me.Tables.CollectionChanged, schemaChangedHandler
  41.         AddHandler Me.Relations.CollectionChanged, schemaChangedHandler
  42.     End Sub
  43.     
  44.     Protected Sub New(ByVal info As SerializationInfo, ByVal context As StreamingContext)
  45.         MyBase.New
  46.         Dim strSchema As String = CType(info.GetValue("XmlSchema", GetType(System.String)),String)
  47.         If (Not (strSchema) Is Nothing) Then
  48.             Dim ds As DataSet = New DataSet
  49.             ds.ReadXmlSchema(New XmlTextReader(New System.IO.StringReader(strSchema)))
  50.             If (Not (ds.Tables("Publishers")) Is Nothing) Then
  51.                 Me.Tables.Add(New PublishersDataTable(ds.Tables("Publishers")))
  52.             End If
  53.             If (Not (ds.Tables("Titles")) Is Nothing) Then
  54.                 Me.Tables.Add(New TitlesDataTable(ds.Tables("Titles")))
  55.             End If
  56.             Me.DataSetName = ds.DataSetName
  57.             Me.Prefix = ds.Prefix
  58.             Me.Namespace = ds.Namespace
  59.             Me.Locale = ds.Locale
  60.             Me.CaseSensitive = ds.CaseSensitive
  61.             Me.EnforceConstraints = ds.EnforceConstraints
  62.             Me.Merge(ds, false, System.Data.MissingSchemaAction.Add)
  63.             Me.InitVars
  64.         Else
  65.             Me.InitClass
  66.         End If
  67.         Me.GetSerializationData(info, context)
  68.         Dim schemaChangedHandler As System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged
  69.         AddHandler Me.Tables.CollectionChanged, schemaChangedHandler
  70.         AddHandler Me.Relations.CollectionChanged, schemaChangedHandler
  71.     End Sub
  72.     
  73.     <System.ComponentModel.Browsable(false),  _
  74.      System.ComponentModel.DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Content)>  _
  75.     Public ReadOnly Property Publishers As PublishersDataTable
  76.         Get
  77.             Return Me.tablePublishers
  78.         End Get
  79.     End Property
  80.     
  81.     <System.ComponentModel.Browsable(false),  _
  82.      System.ComponentModel.DesignerSerializationVisibilityAttribute(System.ComponentModel.DesignerSerializationVisibility.Content)>  _
  83.     Public ReadOnly Property Titles As TitlesDataTable
  84.         Get
  85.             Return Me.tableTitles
  86.         End Get
  87.     End Property
  88.     
  89.     Public Overrides Function Clone() As DataSet
  90.         Dim cln As NewDataSet = CType(MyBase.Clone,NewDataSet)
  91.         cln.InitVars
  92.         Return cln
  93.     End Function
  94.     
  95.     Protected Overrides Function ShouldSerializeTables() As Boolean
  96.         Return false
  97.     End Function
  98.     
  99.     Protected Overrides Function ShouldSerializeRelations() As Boolean
  100.         Return false
  101.     End Function
  102.     
  103.     Protected Overrides Sub ReadXmlSerializable(ByVal reader As XmlReader)
  104.         Me.Reset
  105.         Dim ds As DataSet = New DataSet
  106.         ds.ReadXml(reader)
  107.         If (Not (ds.Tables("Publishers")) Is Nothing) Then
  108.             Me.Tables.Add(New PublishersDataTable(ds.Tables("Publishers")))
  109.         End If
  110.         If (Not (ds.Tables("Titles")) Is Nothing) Then
  111.             Me.Tables.Add(New TitlesDataTable(ds.Tables("Titles")))
  112.         End If
  113.         Me.DataSetName = ds.DataSetName
  114.         Me.Prefix = ds.Prefix
  115.         Me.Namespace = ds.Namespace
  116.         Me.Locale = ds.Locale
  117.         Me.CaseSensitive = ds.CaseSensitive
  118.         Me.EnforceConstraints = ds.EnforceConstraints
  119.         Me.Merge(ds, false, System.Data.MissingSchemaAction.Add)
  120.         Me.InitVars
  121.     End Sub
  122.     
  123.     Protected Overrides Function GetSchemaSerializable() As System.Xml.Schema.XmlSchema
  124.         Dim stream As System.IO.MemoryStream = New System.IO.MemoryStream
  125.         Me.WriteXmlSchema(New XmlTextWriter(stream, Nothing))
  126.         stream.Position = 0
  127.         Return System.Xml.Schema.XmlSchema.Read(New XmlTextReader(stream), Nothing)
  128.     End Function
  129.     
  130.     Friend Sub InitVars()
  131.         Me.tablePublishers = CType(Me.Tables("Publishers"),PublishersDataTable)
  132.         If (Not (Me.tablePublishers) Is Nothing) Then
  133.             Me.tablePublishers.InitVars
  134.         End If
  135.         Me.tableTitles = CType(Me.Tables("Titles"),TitlesDataTable)
  136.         If (Not (Me.tableTitles) Is Nothing) Then
  137.             Me.tableTitles.InitVars
  138.         End If
  139.         Me.relationPubTitles = Me.Relations("PubTitles")
  140.     End Sub
  141.     
  142.     Private Sub InitClass()
  143.         Me.DataSetName = "NewDataSet"
  144.         Me.Prefix = ""
  145.         Me.Namespace = ""
  146.         Me.Locale = New System.Globalization.CultureInfo("en-US")
  147.         Me.CaseSensitive = false
  148.         Me.EnforceConstraints = true
  149.         Me.tablePublishers = New PublishersDataTable
  150.         Me.Tables.Add(Me.tablePublishers)
  151.         Me.tableTitles = New TitlesDataTable
  152.         Me.Tables.Add(Me.tableTitles)
  153.         Dim fkc As ForeignKeyConstraint
  154.         fkc = New ForeignKeyConstraint("PubTitles", New DataColumn() {Me.tablePublishers.pub_idColumn}, New DataColumn() {Me.tableTitles.pub_idColumn})
  155.         Me.tableTitles.Constraints.Add(fkc)
  156.         fkc.AcceptRejectRule = AcceptRejectRule.None
  157.         fkc.DeleteRule = Rule.Cascade
  158.         fkc.UpdateRule = Rule.Cascade
  159.         Me.relationPubTitles = New DataRelation("PubTitles", New DataColumn() {Me.tablePublishers.pub_idColumn}, New DataColumn() {Me.tableTitles.pub_idColumn}, false)
  160.         Me.Relations.Add(Me.relationPubTitles)
  161.     End Sub
  162.     
  163.     Private Function ShouldSerializePublishers() As Boolean
  164.         Return false
  165.     End Function
  166.     
  167.     Private Function ShouldSerializeTitles() As Boolean
  168.         Return false
  169.     End Function
  170.     
  171.     Private Sub SchemaChanged(ByVal sender As Object, ByVal e As System.ComponentModel.CollectionChangeEventArgs)
  172.         If (e.Action = System.ComponentModel.CollectionChangeAction.Remove) Then
  173.             Me.InitVars
  174.         End If
  175.     End Sub
  176.     
  177.     Public Delegate Sub PublishersRowChangeEventHandler(ByVal sender As Object, ByVal e As PublishersRowChangeEvent)
  178.     
  179.     Public Delegate Sub TitlesRowChangeEventHandler(ByVal sender As Object, ByVal e As TitlesRowChangeEvent)
  180.     
  181.     <System.Diagnostics.DebuggerStepThrough()>  _
  182.     Public Class PublishersDataTable
  183.         Inherits DataTable
  184.         Implements System.Collections.IEnumerable
  185.         
  186.         Private columnpub_id As DataColumn
  187.         
  188.         Private columnpub_name As DataColumn
  189.         
  190.         Private columncity As DataColumn
  191.         
  192.         Private columnstate As DataColumn
  193.         
  194.         Private columncountry As DataColumn
  195.         
  196.         Friend Sub New()
  197.             MyBase.New("Publishers")
  198.             Me.InitClass
  199.         End Sub
  200.         
  201.         Friend Sub New(ByVal table As DataTable)
  202.             MyBase.New(table.TableName)
  203.             If (table.CaseSensitive <> table.DataSet.CaseSensitive) Then
  204.                 Me.CaseSensitive = table.CaseSensitive
  205.             End If
  206.             If (table.Locale.ToString <> table.DataSet.Locale.ToString) Then
  207.                 Me.Locale = table.Locale
  208.             End If
  209.             If (table.Namespace <> table.DataSet.Namespace) Then
  210.                 Me.Namespace = table.Namespace
  211.             End If
  212.             Me.Prefix = table.Prefix
  213.             Me.MinimumCapacity = table.MinimumCapacity
  214.             Me.DisplayExpression = table.DisplayExpression
  215.         End Sub
  216.         
  217.         <System.ComponentModel.Browsable(false)>  _
  218.         Public ReadOnly Property Count As Integer
  219.             Get
  220.                 Return Me.Rows.Count
  221.             End Get
  222.         End Property
  223.         
  224.         Friend ReadOnly Property pub_idColumn As DataColumn
  225.             Get
  226.                 Return Me.columnpub_id
  227.             End Get
  228.         End Property
  229.         
  230.         Friend ReadOnly Property pub_nameColumn As DataColumn
  231.             Get
  232.                 Return Me.columnpub_name
  233.             End Get
  234.         End Property
  235.         
  236.         Friend ReadOnly Property cityColumn As DataColumn
  237.             Get
  238.                 Return Me.columncity
  239.             End Get
  240.         End Property
  241.         
  242.         Friend ReadOnly Property stateColumn As DataColumn
  243.             Get
  244.                 Return Me.columnstate
  245.             End Get
  246.         End Property
  247.         
  248.         Friend ReadOnly Property countryColumn As DataColumn
  249.             Get
  250.                 Return Me.columncountry
  251.             End Get
  252.         End Property
  253.         
  254.         Public Default ReadOnly Property Item(ByVal index As Integer) As PublishersRow
  255.             Get
  256.                 Return CType(Me.Rows(index),PublishersRow)
  257.             End Get
  258.         End Property
  259.         
  260.         Public Event PublishersRowChanged As PublishersRowChangeEventHandler
  261.         
  262.         Public Event PublishersRowChanging As PublishersRowChangeEventHandler
  263.         
  264.         Public Event PublishersRowDeleted As PublishersRowChangeEventHandler
  265.         
  266.         Public Event PublishersRowDeleting As PublishersRowChangeEventHandler
  267.         
  268.         Public Overloads Sub AddPublishersRow(ByVal row As PublishersRow)
  269.             Me.Rows.Add(row)
  270.         End Sub
  271.         
  272.         Public Overloads Function AddPublishersRow(ByVal pub_id As String, ByVal pub_name As String, ByVal city As String, ByVal state As String, ByVal country As String) As PublishersRow
  273.             Dim rowPublishersRow As PublishersRow = CType(Me.NewRow,PublishersRow)
  274.             rowPublishersRow.ItemArray = New Object() {pub_id, pub_name, city, state, country}
  275.             Me.Rows.Add(rowPublishersRow)
  276.             Return rowPublishersRow
  277.         End Function
  278.         
  279.         Public Function GetEnumerator() As System.Collections.IEnumerator Implements System.Collections.IEnumerable.GetEnumerator
  280.             Return Me.Rows.GetEnumerator
  281.         End Function
  282.         
  283.         Public Overrides Function Clone() As DataTable
  284.             Dim cln As PublishersDataTable = CType(MyBase.Clone,PublishersDataTable)
  285.             cln.InitVars
  286.             Return cln
  287.         End Function
  288.         
  289.         Friend Sub InitVars()
  290.             Me.columnpub_id = Me.Columns("pub_id")
  291.             Me.columnpub_name = Me.Columns("pub_name")
  292.             Me.columncity = Me.Columns("city")
  293.             Me.columnstate = Me.Columns("state")
  294.             Me.columncountry = Me.Columns("country")
  295.         End Sub
  296.         
  297.         Private Sub InitClass()
  298.             Me.columnpub_id = New DataColumn("pub_id", GetType(System.String), Nothing, System.Data.MappingType.Element)
  299.             Me.Columns.Add(Me.columnpub_id)
  300.             Me.columnpub_name = New DataColumn("pub_name", GetType(System.String), Nothing, System.Data.MappingType.Element)
  301.             Me.Columns.Add(Me.columnpub_name)
  302.             Me.columncity = New DataColumn("city", GetType(System.String), Nothing, System.Data.MappingType.Element)
  303.             Me.Columns.Add(Me.columncity)
  304.             Me.columnstate = New DataColumn("state", GetType(System.String), Nothing, System.Data.MappingType.Element)
  305.             Me.Columns.Add(Me.columnstate)
  306.             Me.columncountry = New DataColumn("country", GetType(System.String), Nothing, System.Data.MappingType.Element)
  307.             Me.Columns.Add(Me.columncountry)
  308.             Me.Constraints.Add(New UniqueConstraint("Constraint1", New DataColumn() {Me.columnpub_id}, false))
  309.             Me.columnpub_id.Unique = true
  310.         End Sub
  311.         
  312.         Public Function NewPublishersRow() As PublishersRow
  313.             Return CType(Me.NewRow,PublishersRow)
  314.         End Function
  315.         
  316.         Protected Overrides Function NewRowFromBuilder(ByVal builder As DataRowBuilder) As DataRow
  317.             Return New PublishersRow(builder)
  318.         End Function
  319.         
  320.         Protected Overrides Function GetRowType() As System.Type
  321.             Return GetType(PublishersRow)
  322.         End Function
  323.         
  324.         Protected Overrides Sub OnRowChanged(ByVal e As DataRowChangeEventArgs)
  325.             MyBase.OnRowChanged(e)
  326.             If (Not (Me.PublishersRowChangedEvent) Is Nothing) Then
  327.                 RaiseEvent PublishersRowChanged(Me, New PublishersRowChangeEvent(CType(e.Row,PublishersRow), e.Action))
  328.             End If
  329.         End Sub
  330.         
  331.         Protected Overrides Sub OnRowChanging(ByVal e As DataRowChangeEventArgs)
  332.             MyBase.OnRowChanging(e)
  333.             If (Not (Me.PublishersRowChangingEvent) Is Nothing) Then
  334.                 RaiseEvent PublishersRowChanging(Me, New PublishersRowChangeEvent(CType(e.Row,PublishersRow), e.Action))
  335.             End If
  336.         End Sub
  337.         
  338.         Protected Overrides Sub OnRowDeleted(ByVal e As DataRowChangeEventArgs)
  339.             MyBase.OnRowDeleted(e)
  340.             If (Not (Me.PublishersRowDeletedEvent) Is Nothing) Then
  341.                 RaiseEvent PublishersRowDeleted(Me, New PublishersRowChangeEvent(CType(e.Row,PublishersRow), e.Action))
  342.             End If
  343.         End Sub
  344.         
  345.         Protected Overrides Sub OnRowDeleting(ByVal e As DataRowChangeEventArgs)
  346.             MyBase.OnRowDeleting(e)
  347.             If (Not (Me.PublishersRowDeletingEvent) Is Nothing) Then
  348.                 RaiseEvent PublishersRowDeleting(Me, New PublishersRowChangeEvent(CType(e.Row,PublishersRow), e.Action))
  349.             End If
  350.         End Sub
  351.         
  352.         Public Sub RemovePublishersRow(ByVal row As PublishersRow)
  353.             Me.Rows.Remove(row)
  354.         End Sub
  355.     End Class
  356.     
  357.     <System.Diagnostics.DebuggerStepThrough()>  _
  358.     Public Class PublishersRow
  359.         Inherits DataRow
  360.         
  361.         Private tablePublishers As PublishersDataTable
  362.         
  363.         Friend Sub New(ByVal rb As DataRowBuilder)
  364.             MyBase.New(rb)
  365.             Me.tablePublishers = CType(Me.Table,PublishersDataTable)
  366.         End Sub
  367.         
  368.         Public Property pub_id As String
  369.             Get
  370.                 Try 
  371.                     Return CType(Me(Me.tablePublishers.pub_idColumn),String)
  372.                 Catch e As InvalidCastException
  373.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  374.                 End Try
  375.             End Get
  376.             Set
  377.                 Me(Me.tablePublishers.pub_idColumn) = value
  378.             End Set
  379.         End Property
  380.         
  381.         Public Property pub_name As String
  382.             Get
  383.                 Try 
  384.                     Return CType(Me(Me.tablePublishers.pub_nameColumn),String)
  385.                 Catch e As InvalidCastException
  386.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  387.                 End Try
  388.             End Get
  389.             Set
  390.                 Me(Me.tablePublishers.pub_nameColumn) = value
  391.             End Set
  392.         End Property
  393.         
  394.         Public Property city As String
  395.             Get
  396.                 Try 
  397.                     Return CType(Me(Me.tablePublishers.cityColumn),String)
  398.                 Catch e As InvalidCastException
  399.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  400.                 End Try
  401.             End Get
  402.             Set
  403.                 Me(Me.tablePublishers.cityColumn) = value
  404.             End Set
  405.         End Property
  406.         
  407.         Public Property state As String
  408.             Get
  409.                 Try 
  410.                     Return CType(Me(Me.tablePublishers.stateColumn),String)
  411.                 Catch e As InvalidCastException
  412.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  413.                 End Try
  414.             End Get
  415.             Set
  416.                 Me(Me.tablePublishers.stateColumn) = value
  417.             End Set
  418.         End Property
  419.         
  420.         Public Property country As String
  421.             Get
  422.                 Try 
  423.                     Return CType(Me(Me.tablePublishers.countryColumn),String)
  424.                 Catch e As InvalidCastException
  425.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  426.                 End Try
  427.             End Get
  428.             Set
  429.                 Me(Me.tablePublishers.countryColumn) = value
  430.             End Set
  431.         End Property
  432.         
  433.         Public Function Ispub_idNull() As Boolean
  434.             Return Me.IsNull(Me.tablePublishers.pub_idColumn)
  435.         End Function
  436.         
  437.         Public Sub Setpub_idNull()
  438.             Me(Me.tablePublishers.pub_idColumn) = System.Convert.DBNull
  439.         End Sub
  440.         
  441.         Public Function Ispub_nameNull() As Boolean
  442.             Return Me.IsNull(Me.tablePublishers.pub_nameColumn)
  443.         End Function
  444.         
  445.         Public Sub Setpub_nameNull()
  446.             Me(Me.tablePublishers.pub_nameColumn) = System.Convert.DBNull
  447.         End Sub
  448.         
  449.         Public Function IscityNull() As Boolean
  450.             Return Me.IsNull(Me.tablePublishers.cityColumn)
  451.         End Function
  452.         
  453.         Public Sub SetcityNull()
  454.             Me(Me.tablePublishers.cityColumn) = System.Convert.DBNull
  455.         End Sub
  456.         
  457.         Public Function IsstateNull() As Boolean
  458.             Return Me.IsNull(Me.tablePublishers.stateColumn)
  459.         End Function
  460.         
  461.         Public Sub SetstateNull()
  462.             Me(Me.tablePublishers.stateColumn) = System.Convert.DBNull
  463.         End Sub
  464.         
  465.         Public Function IscountryNull() As Boolean
  466.             Return Me.IsNull(Me.tablePublishers.countryColumn)
  467.         End Function
  468.         
  469.         Public Sub SetcountryNull()
  470.             Me(Me.tablePublishers.countryColumn) = System.Convert.DBNull
  471.         End Sub
  472.         
  473.         Public Function GetTitlesRows() As TitlesRow()
  474.             Return CType(Me.GetChildRows(Me.Table.ChildRelations("PubTitles")),TitlesRow())
  475.         End Function
  476.     End Class
  477.     
  478.     <System.Diagnostics.DebuggerStepThrough()>  _
  479.     Public Class PublishersRowChangeEvent
  480.         Inherits EventArgs
  481.         
  482.         Private eventRow As PublishersRow
  483.         
  484.         Private eventAction As DataRowAction
  485.         
  486.         Public Sub New(ByVal row As PublishersRow, ByVal action As DataRowAction)
  487.             MyBase.New
  488.             Me.eventRow = row
  489.             Me.eventAction = action
  490.         End Sub
  491.         
  492.         Public ReadOnly Property Row As PublishersRow
  493.             Get
  494.                 Return Me.eventRow
  495.             End Get
  496.         End Property
  497.         
  498.         Public ReadOnly Property Action As DataRowAction
  499.             Get
  500.                 Return Me.eventAction
  501.             End Get
  502.         End Property
  503.     End Class
  504.     
  505.     <System.Diagnostics.DebuggerStepThrough()>  _
  506.     Public Class TitlesDataTable
  507.         Inherits DataTable
  508.         Implements System.Collections.IEnumerable
  509.         
  510.         Private columntitle_id As DataColumn
  511.         
  512.         Private columntitle As DataColumn
  513.         
  514.         Private columntype As DataColumn
  515.         
  516.         Private columnpub_id As DataColumn
  517.         
  518.         Private columnprice As DataColumn
  519.         
  520.         Private columnadvance As DataColumn
  521.         
  522.         Private columnroyalty As DataColumn
  523.         
  524.         Private columnytd_sales As DataColumn
  525.         
  526.         Private columnnotes As DataColumn
  527.         
  528.         Private columnpubdate As DataColumn
  529.         
  530.         Friend Sub New()
  531.             MyBase.New("Titles")
  532.             Me.InitClass
  533.         End Sub
  534.         
  535.         Friend Sub New(ByVal table As DataTable)
  536.             MyBase.New(table.TableName)
  537.             If (table.CaseSensitive <> table.DataSet.CaseSensitive) Then
  538.                 Me.CaseSensitive = table.CaseSensitive
  539.             End If
  540.             If (table.Locale.ToString <> table.DataSet.Locale.ToString) Then
  541.                 Me.Locale = table.Locale
  542.             End If
  543.             If (table.Namespace <> table.DataSet.Namespace) Then
  544.                 Me.Namespace = table.Namespace
  545.             End If
  546.             Me.Prefix = table.Prefix
  547.             Me.MinimumCapacity = table.MinimumCapacity
  548.             Me.DisplayExpression = table.DisplayExpression
  549.         End Sub
  550.         
  551.         <System.ComponentModel.Browsable(false)>  _
  552.         Public ReadOnly Property Count As Integer
  553.             Get
  554.                 Return Me.Rows.Count
  555.             End Get
  556.         End Property
  557.         
  558.         Friend ReadOnly Property title_idColumn As DataColumn
  559.             Get
  560.                 Return Me.columntitle_id
  561.             End Get
  562.         End Property
  563.         
  564.         Friend ReadOnly Property titleColumn As DataColumn
  565.             Get
  566.                 Return Me.columntitle
  567.             End Get
  568.         End Property
  569.         
  570.         Friend ReadOnly Property typeColumn As DataColumn
  571.             Get
  572.                 Return Me.columntype
  573.             End Get
  574.         End Property
  575.         
  576.         Friend ReadOnly Property pub_idColumn As DataColumn
  577.             Get
  578.                 Return Me.columnpub_id
  579.             End Get
  580.         End Property
  581.         
  582.         Friend ReadOnly Property priceColumn As DataColumn
  583.             Get
  584.                 Return Me.columnprice
  585.             End Get
  586.         End Property
  587.         
  588.         Friend ReadOnly Property advanceColumn As DataColumn
  589.             Get
  590.                 Return Me.columnadvance
  591.             End Get
  592.         End Property
  593.         
  594.         Friend ReadOnly Property royaltyColumn As DataColumn
  595.             Get
  596.                 Return Me.columnroyalty
  597.             End Get
  598.         End Property
  599.         
  600.         Friend ReadOnly Property ytd_salesColumn As DataColumn
  601.             Get
  602.                 Return Me.columnytd_sales
  603.             End Get
  604.         End Property
  605.         
  606.         Friend ReadOnly Property notesColumn As DataColumn
  607.             Get
  608.                 Return Me.columnnotes
  609.             End Get
  610.         End Property
  611.         
  612.         Friend ReadOnly Property pubdateColumn As DataColumn
  613.             Get
  614.                 Return Me.columnpubdate
  615.             End Get
  616.         End Property
  617.         
  618.         Public Default ReadOnly Property Item(ByVal index As Integer) As TitlesRow
  619.             Get
  620.                 Return CType(Me.Rows(index),TitlesRow)
  621.             End Get
  622.         End Property
  623.         
  624.         Public Event TitlesRowChanged As TitlesRowChangeEventHandler
  625.         
  626.         Public Event TitlesRowChanging As TitlesRowChangeEventHandler
  627.         
  628.         Public Event TitlesRowDeleted As TitlesRowChangeEventHandler
  629.         
  630.         Public Event TitlesRowDeleting As TitlesRowChangeEventHandler
  631.         
  632.         Public Overloads Sub AddTitlesRow(ByVal row As TitlesRow)
  633.             Me.Rows.Add(row)
  634.         End Sub
  635.         
  636.         Public Overloads Function AddTitlesRow(ByVal title_id As String, ByVal title As String, ByVal type As String, ByVal parentPublishersRowByPubTitles As PublishersRow, ByVal price As Decimal, ByVal advance As Decimal, ByVal royalty As Integer, ByVal ytd_sales As Integer, ByVal notes As String, ByVal pubdate As Date) As TitlesRow
  637.             Dim rowTitlesRow As TitlesRow = CType(Me.NewRow,TitlesRow)
  638.             rowTitlesRow.ItemArray = New Object() {title_id, title, type, parentPublishersRowByPubTitles(0), price, advance, royalty, ytd_sales, notes, pubdate}
  639.             Me.Rows.Add(rowTitlesRow)
  640.             Return rowTitlesRow
  641.         End Function
  642.         
  643.         Public Function GetEnumerator() As System.Collections.IEnumerator Implements System.Collections.IEnumerable.GetEnumerator
  644.             Return Me.Rows.GetEnumerator
  645.         End Function
  646.         
  647.         Public Overrides Function Clone() As DataTable
  648.             Dim cln As TitlesDataTable = CType(MyBase.Clone,TitlesDataTable)
  649.             cln.InitVars
  650.             Return cln
  651.         End Function
  652.         
  653.         Friend Sub InitVars()
  654.             Me.columntitle_id = Me.Columns("title_id")
  655.             Me.columntitle = Me.Columns("title")
  656.             Me.columntype = Me.Columns("type")
  657.             Me.columnpub_id = Me.Columns("pub_id")
  658.             Me.columnprice = Me.Columns("price")
  659.             Me.columnadvance = Me.Columns("advance")
  660.             Me.columnroyalty = Me.Columns("royalty")
  661.             Me.columnytd_sales = Me.Columns("ytd_sales")
  662.             Me.columnnotes = Me.Columns("notes")
  663.             Me.columnpubdate = Me.Columns("pubdate")
  664.         End Sub
  665.         
  666.         Private Sub InitClass()
  667.             Me.columntitle_id = New DataColumn("title_id", GetType(System.String), Nothing, System.Data.MappingType.Element)
  668.             Me.Columns.Add(Me.columntitle_id)
  669.             Me.columntitle = New DataColumn("title", GetType(System.String), Nothing, System.Data.MappingType.Element)
  670.             Me.Columns.Add(Me.columntitle)
  671.             Me.columntype = New DataColumn("type", GetType(System.String), Nothing, System.Data.MappingType.Element)
  672.             Me.Columns.Add(Me.columntype)
  673.             Me.columnpub_id = New DataColumn("pub_id", GetType(System.String), Nothing, System.Data.MappingType.Element)
  674.             Me.Columns.Add(Me.columnpub_id)
  675.             Me.columnprice = New DataColumn("price", GetType(System.Decimal), Nothing, System.Data.MappingType.Element)
  676.             Me.Columns.Add(Me.columnprice)
  677.             Me.columnadvance = New DataColumn("advance", GetType(System.Decimal), Nothing, System.Data.MappingType.Element)
  678.             Me.Columns.Add(Me.columnadvance)
  679.             Me.columnroyalty = New DataColumn("royalty", GetType(System.Int32), Nothing, System.Data.MappingType.Element)
  680.             Me.Columns.Add(Me.columnroyalty)
  681.             Me.columnytd_sales = New DataColumn("ytd_sales", GetType(System.Int32), Nothing, System.Data.MappingType.Element)
  682.             Me.Columns.Add(Me.columnytd_sales)
  683.             Me.columnnotes = New DataColumn("notes", GetType(System.String), Nothing, System.Data.MappingType.Element)
  684.             Me.Columns.Add(Me.columnnotes)
  685.             Me.columnpubdate = New DataColumn("pubdate", GetType(System.DateTime), Nothing, System.Data.MappingType.Element)
  686.             Me.Columns.Add(Me.columnpubdate)
  687.         End Sub
  688.         
  689.         Public Function NewTitlesRow() As TitlesRow
  690.             Return CType(Me.NewRow,TitlesRow)
  691.         End Function
  692.         
  693.         Protected Overrides Function NewRowFromBuilder(ByVal builder As DataRowBuilder) As DataRow
  694.             Return New TitlesRow(builder)
  695.         End Function
  696.         
  697.         Protected Overrides Function GetRowType() As System.Type
  698.             Return GetType(TitlesRow)
  699.         End Function
  700.         
  701.         Protected Overrides Sub OnRowChanged(ByVal e As DataRowChangeEventArgs)
  702.             MyBase.OnRowChanged(e)
  703.             If (Not (Me.TitlesRowChangedEvent) Is Nothing) Then
  704.                 RaiseEvent TitlesRowChanged(Me, New TitlesRowChangeEvent(CType(e.Row,TitlesRow), e.Action))
  705.             End If
  706.         End Sub
  707.         
  708.         Protected Overrides Sub OnRowChanging(ByVal e As DataRowChangeEventArgs)
  709.             MyBase.OnRowChanging(e)
  710.             If (Not (Me.TitlesRowChangingEvent) Is Nothing) Then
  711.                 RaiseEvent TitlesRowChanging(Me, New TitlesRowChangeEvent(CType(e.Row,TitlesRow), e.Action))
  712.             End If
  713.         End Sub
  714.         
  715.         Protected Overrides Sub OnRowDeleted(ByVal e As DataRowChangeEventArgs)
  716.             MyBase.OnRowDeleted(e)
  717.             If (Not (Me.TitlesRowDeletedEvent) Is Nothing) Then
  718.                 RaiseEvent TitlesRowDeleted(Me, New TitlesRowChangeEvent(CType(e.Row,TitlesRow), e.Action))
  719.             End If
  720.         End Sub
  721.         
  722.         Protected Overrides Sub OnRowDeleting(ByVal e As DataRowChangeEventArgs)
  723.             MyBase.OnRowDeleting(e)
  724.             If (Not (Me.TitlesRowDeletingEvent) Is Nothing) Then
  725.                 RaiseEvent TitlesRowDeleting(Me, New TitlesRowChangeEvent(CType(e.Row,TitlesRow), e.Action))
  726.             End If
  727.         End Sub
  728.         
  729.         Public Sub RemoveTitlesRow(ByVal row As TitlesRow)
  730.             Me.Rows.Remove(row)
  731.         End Sub
  732.     End Class
  733.     
  734.     <System.Diagnostics.DebuggerStepThrough()>  _
  735.     Public Class TitlesRow
  736.         Inherits DataRow
  737.         
  738.         Private tableTitles As TitlesDataTable
  739.         
  740.         Friend Sub New(ByVal rb As DataRowBuilder)
  741.             MyBase.New(rb)
  742.             Me.tableTitles = CType(Me.Table,TitlesDataTable)
  743.         End Sub
  744.         
  745.         Public Property title_id As String
  746.             Get
  747.                 Try 
  748.                     Return CType(Me(Me.tableTitles.title_idColumn),String)
  749.                 Catch e As InvalidCastException
  750.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  751.                 End Try
  752.             End Get
  753.             Set
  754.                 Me(Me.tableTitles.title_idColumn) = value
  755.             End Set
  756.         End Property
  757.         
  758.         Public Property title As String
  759.             Get
  760.                 Try 
  761.                     Return CType(Me(Me.tableTitles.titleColumn),String)
  762.                 Catch e As InvalidCastException
  763.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  764.                 End Try
  765.             End Get
  766.             Set
  767.                 Me(Me.tableTitles.titleColumn) = value
  768.             End Set
  769.         End Property
  770.         
  771.         Public Property type As String
  772.             Get
  773.                 Try 
  774.                     Return CType(Me(Me.tableTitles.typeColumn),String)
  775.                 Catch e As InvalidCastException
  776.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  777.                 End Try
  778.             End Get
  779.             Set
  780.                 Me(Me.tableTitles.typeColumn) = value
  781.             End Set
  782.         End Property
  783.         
  784.         Public Property pub_id As String
  785.             Get
  786.                 Try 
  787.                     Return CType(Me(Me.tableTitles.pub_idColumn),String)
  788.                 Catch e As InvalidCastException
  789.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  790.                 End Try
  791.             End Get
  792.             Set
  793.                 Me(Me.tableTitles.pub_idColumn) = value
  794.             End Set
  795.         End Property
  796.         
  797.         Public Property price As Decimal
  798.             Get
  799.                 Try 
  800.                     Return CType(Me(Me.tableTitles.priceColumn),Decimal)
  801.                 Catch e As InvalidCastException
  802.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  803.                 End Try
  804.             End Get
  805.             Set
  806.                 Me(Me.tableTitles.priceColumn) = value
  807.             End Set
  808.         End Property
  809.         
  810.         Public Property advance As Decimal
  811.             Get
  812.                 Try 
  813.                     Return CType(Me(Me.tableTitles.advanceColumn),Decimal)
  814.                 Catch e As InvalidCastException
  815.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  816.                 End Try
  817.             End Get
  818.             Set
  819.                 Me(Me.tableTitles.advanceColumn) = value
  820.             End Set
  821.         End Property
  822.         
  823.         Public Property royalty As Integer
  824.             Get
  825.                 Try 
  826.                     Return CType(Me(Me.tableTitles.royaltyColumn),Integer)
  827.                 Catch e As InvalidCastException
  828.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  829.                 End Try
  830.             End Get
  831.             Set
  832.                 Me(Me.tableTitles.royaltyColumn) = value
  833.             End Set
  834.         End Property
  835.         
  836.         Public Property ytd_sales As Integer
  837.             Get
  838.                 Try 
  839.                     Return CType(Me(Me.tableTitles.ytd_salesColumn),Integer)
  840.                 Catch e As InvalidCastException
  841.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  842.                 End Try
  843.             End Get
  844.             Set
  845.                 Me(Me.tableTitles.ytd_salesColumn) = value
  846.             End Set
  847.         End Property
  848.         
  849.         Public Property notes As String
  850.             Get
  851.                 Try 
  852.                     Return CType(Me(Me.tableTitles.notesColumn),String)
  853.                 Catch e As InvalidCastException
  854.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  855.                 End Try
  856.             End Get
  857.             Set
  858.                 Me(Me.tableTitles.notesColumn) = value
  859.             End Set
  860.         End Property
  861.         
  862.         Public Property pubdate As Date
  863.             Get
  864.                 Try 
  865.                     Return CType(Me(Me.tableTitles.pubdateColumn),Date)
  866.                 Catch e As InvalidCastException
  867.                     Throw New StrongTypingException("Cannot get value because it is DBNull.", e)
  868.                 End Try
  869.             End Get
  870.             Set
  871.                 Me(Me.tableTitles.pubdateColumn) = value
  872.             End Set
  873.         End Property
  874.         
  875.         Public Property PublishersRow As PublishersRow
  876.             Get
  877.                 Return CType(Me.GetParentRow(Me.Table.ParentRelations("PubTitles")),PublishersRow)
  878.             End Get
  879.             Set
  880.                 Me.SetParentRow(value, Me.Table.ParentRelations("PubTitles"))
  881.             End Set
  882.         End Property
  883.         
  884.         Public Function Istitle_idNull() As Boolean
  885.             Return Me.IsNull(Me.tableTitles.title_idColumn)
  886.         End Function
  887.         
  888.         Public Sub Settitle_idNull()
  889.             Me(Me.tableTitles.title_idColumn) = System.Convert.DBNull
  890.         End Sub
  891.         
  892.         Public Function IstitleNull() As Boolean
  893.             Return Me.IsNull(Me.tableTitles.titleColumn)
  894.         End Function
  895.         
  896.         Public Sub SettitleNull()
  897.             Me(Me.tableTitles.titleColumn) = System.Convert.DBNull
  898.         End Sub
  899.         
  900.         Public Function IstypeNull() As Boolean
  901.             Return Me.IsNull(Me.tableTitles.typeColumn)
  902.         End Function
  903.         
  904.         Public Sub SettypeNull()
  905.             Me(Me.tableTitles.typeColumn) = System.Convert.DBNull
  906.         End Sub
  907.         
  908.         Public Function Ispub_idNull() As Boolean
  909.             Return Me.IsNull(Me.tableTitles.pub_idColumn)
  910.         End Function
  911.         
  912.         Public Sub Setpub_idNull()
  913.             Me(Me.tableTitles.pub_idColumn) = System.Convert.DBNull
  914.         End Sub
  915.         
  916.         Public Function IspriceNull() As Boolean
  917.             Return Me.IsNull(Me.tableTitles.priceColumn)
  918.         End Function
  919.         
  920.         Public Sub SetpriceNull()
  921.             Me(Me.tableTitles.priceColumn) = System.Convert.DBNull
  922.         End Sub
  923.         
  924.         Public Function IsadvanceNull() As Boolean
  925.             Return Me.IsNull(Me.tableTitles.advanceColumn)
  926.         End Function
  927.         
  928.         Public Sub SetadvanceNull()
  929.             Me(Me.tableTitles.advanceColumn) = System.Convert.DBNull
  930.         End Sub
  931.         
  932.         Public Function IsroyaltyNull() As Boolean
  933.             Return Me.IsNull(Me.tableTitles.royaltyColumn)
  934.         End Function
  935.         
  936.         Public Sub SetroyaltyNull()
  937.             Me(Me.tableTitles.royaltyColumn) = System.Convert.DBNull
  938.         End Sub
  939.         
  940.         Public Function Isytd_salesNull() As Boolean
  941.             Return Me.IsNull(Me.tableTitles.ytd_salesColumn)
  942.         End Function
  943.         
  944.         Public Sub Setytd_salesNull()
  945.             Me(Me.tableTitles.ytd_salesColumn) = System.Convert.DBNull
  946.         End Sub
  947.         
  948.         Public Function IsnotesNull() As Boolean
  949.             Return Me.IsNull(Me.tableTitles.notesColumn)
  950.         End Function
  951.         
  952.         Public Sub SetnotesNull()
  953.             Me(Me.tableTitles.notesColumn) = System.Convert.DBNull
  954.         End Sub
  955.         
  956.         Public Function IspubdateNull() As Boolean
  957.             Return Me.IsNull(Me.tableTitles.pubdateColumn)
  958.         End Function
  959.         
  960.         Public Sub SetpubdateNull()
  961.             Me(Me.tableTitles.pubdateColumn) = System.Convert.DBNull
  962.         End Sub
  963.     End Class
  964.     
  965.     <System.Diagnostics.DebuggerStepThrough()>  _
  966.     Public Class TitlesRowChangeEvent
  967.         Inherits EventArgs
  968.         
  969.         Private eventRow As TitlesRow
  970.         
  971.         Private eventAction As DataRowAction
  972.         
  973.         Public Sub New(ByVal row As TitlesRow, ByVal action As DataRowAction)
  974.             MyBase.New
  975.             Me.eventRow = row
  976.             Me.eventAction = action
  977.         End Sub
  978.         
  979.         Public ReadOnly Property Row As TitlesRow
  980.             Get
  981.                 Return Me.eventRow
  982.             End Get
  983.         End Property
  984.         
  985.         Public ReadOnly Property Action As DataRowAction
  986.             Get
  987.                 Return Me.eventAction
  988.             End Get
  989.         End Property
  990.     End Class
  991. End Class
  992.